We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mpnikhil/lenny-rag-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
Jackson Shuttleworth.json•45.9 KiB
{
"episode": {
"guest": "Jackson Shuttleworth",
"expertise_tags": [
"Product Management",
"Retention",
"Engagement Mechanics",
"Experimentation",
"Consumer Apps",
"Habit Formation",
"Streaks Feature"
],
"summary": "Jackson Shuttleworth, Group Product Manager at Duolingo leading the retention team, discusses the history and evolution of Duolingo's streak feature—arguably the single most impactful feature driving the company's $14 billion valuation and recent doubling in market value. Over four years, the team has run 600+ experiments optimizing streaks from an XP-based system to a one-lesson daily mechanic. Key learnings include: focusing on the 0-7 day critical retention window, extensive copy testing, understanding loss aversion psychology, introducing streak freezes for flexibility, and maintaining feature sanctity through strong product governance. The conversation covers wrong turns (over-simplifying to single exercises, adding XP indicators to lessons), successful pivots (goal-setting, perfect streaks, streak saver notifications), and operational practices that enable continuous optimization without feature bloat.",
"key_frameworks": [
"Loss Aversion Psychology",
"Habit Loop Design",
"Unit of Measure Clarity",
"Metric-Based Team Structure (CURR over DAUs)",
"Zero-to-Seven Day Critical Window",
"Flexibility vs. Perfection Balance",
"Feature Sanctity Protection",
"Revealed Behavior vs. Stated Preferences",
"Iterative V1 Approach",
"Cross-Functional Dependency Mapping"
]
},
"topics": [
{
"id": "topic_1",
"title": "Introduction to Duolingo Streaks and Business Impact",
"summary": "Jackson introduces the streak feature as Duolingo's most impactful engagement mechanic beyond core learning. With 9 million users maintaining year-plus streaks, streaks drive DAUs and retention at scale, contributing to Duolingo's $14 billion valuation which has doubled in six months.",
"timestamp_start": "00:00:00",
"timestamp_end": "00:09:57",
"line_start": 1,
"line_end": 83
},
{
"id": "topic_2",
"title": "Evolution from XP-Based to One-Lesson Streak Mechanic",
"summary": "The original XP-based streak system required users to hit experience point goals, which created friction when users set unrealistic targets. Jackson discusses the pivotal experiment moving to a simple one-lesson-per-day metric, which removed complexity while maintaining meaningfulness by aligning with Duolingo's core unit of use.",
"timestamp_start": "00:10:04",
"timestamp_end": "00:12:46",
"line_start": 88,
"line_end": 111
},
{
"id": "topic_3",
"title": "Testing Philosophy and Over-Simplification Failures",
"summary": "Jackson shares the experiment to make streaks even easier by requiring just one exercise instead of a full lesson. Despite increasing funnel completion, DAUs flat-lined because the simplified unit of measure lost meaningfulness, capturing only the least engaged users who weren't worth retaining.",
"timestamp_start": "00:12:47",
"timestamp_end": "00:17:14",
"line_start": 124,
"line_end": 141
},
{
"id": "topic_4",
"title": "600+ Experiments Over Four Years: Scale and Rigor",
"summary": "Jackson reveals Duolingo runs roughly one experiment every other day on streaks, from major mechanic changes to small copy tweaks. About half win, half lose, but all yield valuable learnings. The team maintains conviction in hypotheses rather than random testing, often borrowing insights from monetization wins and other products.",
"timestamp_start": "00:17:15",
"timestamp_end": "00:26:39",
"line_start": 134,
"line_end": 190
},
{
"id": "topic_5",
"title": "Zero-to-Seven Day Critical Retention Window",
"summary": "Data shows that once users reach a seven-day streak, loss aversion kicks in and retention flattens. Duolingo invests disproportionately in experiments targeting the one-to-seven day window, as this is where the biggest retention jumps occur. Features introduced later in the user journey have less immediate impact.",
"timestamp_start": "00:19:13",
"timestamp_end": "00:20:05",
"line_start": 151,
"line_end": 156
},
{
"id": "topic_6",
"title": "Streak Goal Setting as Psychological Lever",
"summary": "Inspired by monetization team copy about subscription benefits, Jackson's team tested having users commit to streak length goals (7, 14, 30 days). Starting with a message about being 7x more likely to finish the course with a 30-day streak, they found goal-setting massive wins. Adding an opt-out button (even though it didn't affect downstream behavior) increased engagement by making the commitment intentional.",
"timestamp_start": "00:20:06",
"timestamp_end": "00:24:39",
"line_start": 157,
"line_end": 174
},
{
"id": "topic_7",
"title": "Copy Testing and CTA Optimization",
"summary": "Duolingo has strong infrastructure for copy testing. A simple change from 'Continue' to 'Commit To My Goal' on the streak goal screen was a massive win. Jackson emphasizes copy tests are cheap to run and often yield surprising results; they don't need a strong upfront hypothesis.",
"timestamp_start": "00:27:18",
"timestamp_end": "00:28:36",
"line_start": 196,
"line_end": 205
},
{
"id": "topic_8",
"title": "Product Review Governance and Avoiding Feature Bloat",
"summary": "Luis reviews all product changes at Duolingo, creating a high product bar that prevents the app from becoming a kitchen sink. Jackson describes resetting UI and features periodically to maintain simplicity, even when locally optimized. The team uses quarterly reviews to assess roadmap strategy and ensure experiments serve long-term goals.",
"timestamp_start": "00:29:06",
"timestamp_end": "00:30:39",
"line_start": 208,
"line_end": 213
},
{
"id": "topic_9",
"title": "Why Streaks Work for Language Learning Specifically",
"summary": "Jackson explains that language learning is hard to measure day-to-day, so streaks provide tangible progress feedback. He notes that while language learning provides a unique advantage, companies should frame streaks around their own value propositions. Mobile games struggle with daily streaks because playing a game 3000 days feels different than learning a language 3000 days.",
"timestamp_start": "00:31:03",
"timestamp_end": "00:33:02",
"line_start": 217,
"line_end": 225
},
{
"id": "topic_10",
"title": "Clarity Over Cleverness in Feature Design",
"summary": "Jackson's first win as a PM was simple explanatory copy: 'Start a day to extend your streak, but miss a day and it resets.' Users often don't understand streaks or streak freezes. The flame metaphor didn't resonate globally (particularly in India). The team shifted to prominent number displays and calendar-like visuals over beautiful animations, prioritizing comprehension.",
"timestamp_start": "00:33:32",
"timestamp_end": "00:44:37",
"line_start": 229,
"line_end": 299
},
{
"id": "topic_11",
"title": "Flexibility Mechanic: Streak Freezes Strategy",
"summary": "Jackson shares the 'Streak Serenity Prayer' philosophy: accept needed flexibility, pursue perfection where possible, celebrate regardless. Streak freezes are the biggest mechanic-level DAU driver. Testing two vs. three freezes showed two was optimal—more flexibility helped short-term returns after missed days, but three trained users to take unnecessary time off, reducing overall return rates.",
"timestamp_start": "00:45:52",
"timestamp_end": "00:48:59",
"line_start": 310,
"line_end": 342
},
{
"id": "topic_12",
"title": "Streak Freezes for New Streaks vs. Long Streaks",
"summary": "Providing two free streak freezes at streak start was a massive win because early-stage streaks (1-3 days) are fragile and easy to abandon. Conversely, long-streak users (400+ days) need less flexibility because they have intrinsic motivation. The strategy balances protecting new habits while avoiding over-conditioning long-term users.",
"timestamp_start": "00:48:59",
"timestamp_end": "00:50:46",
"line_start": 342,
"line_end": 351
},
{
"id": "topic_13",
"title": "Monetization vs. Retention Tension in Streaks",
"summary": "Jackson discusses the ongoing tension between monetizing streak freezes (gem purchases) and optimizing for retention. The team is experimenting with demonetizing or introducing free options because retention wins sometimes hurt revenue. They introduced 'Earn Back' (redo lessons to restore a lost streak) as a free alternative to paid 'Streak Repair,' which was a retention winner.",
"timestamp_start": "00:50:51",
"timestamp_end": "00:53:30",
"line_start": 355,
"line_end": 375
},
{
"id": "topic_14",
"title": "Streak Sanctity: Protecting Feature Meaning Long-Term",
"summary": "Jackson's co-lead Antonia serves as 'keeper of the sanctity' for streaks. There's a one-way door where if you make streaks too easy, 9 million long-streak users stop caring—an extinction-level event for retention. The team wrestles constantly with the line between flexibility and cheapening the feature. Governance from Luis and Antonia prevents going too far.",
"timestamp_start": "00:53:30",
"timestamp_end": "00:54:49",
"line_start": 371,
"line_end": 387
},
{
"id": "topic_15",
"title": "Notification Timing: 23.5 Hours and Streak Saver Strategy",
"summary": "The practice reminder sends 23.5 hours after last practice—better than user-set preferences because revealed behavior (when users actually practice) beats stated preferences. The 'streak saver' notification at 10 PM on days users haven't extended their streak is perceived as helpful rather than spammy because users care about streaks. Notification strategy works when tied to features users value.",
"timestamp_start": "00:55:21",
"timestamp_end": "00:57:36",
"line_start": 392,
"line_end": 414
},
{
"id": "topic_16",
"title": "Perfect Streak Feature: Celebrating Non-Flexibility",
"summary": "Perfect Streak turns the streak gold if unused for several days, offering no game-mechanical reward but psychological recognition. It's simple and powerful—a counterweight to flexibility mechanics that pulls users toward perfect behavior. Jackson notes users get attached to perfect streaks too, evidenced by support requests from employees losing them.",
"timestamp_start": "00:58:23",
"timestamp_end": "01:00:13",
"line_start": 424,
"line_end": 430
},
{
"id": "topic_17",
"title": "Haptics, Animation, and Moment Creation",
"summary": "Beyond copy, Jackson emphasizes haptics and animation make moments feel rewarding. Duolingo recently hired an animation studio. Haptics are tested extensively—they make users pause and savor streak extensions rather than rushing through. The goal isn't speed but connection; strategic friction at high-value moments increases retention.",
"timestamp_start": "01:01:02",
"timestamp_end": "01:03:33",
"line_start": 445,
"line_end": 473
},
{
"id": "topic_18",
"title": "Metric-Based Team Structure and Cross-Ownership",
"summary": "Duolingo organizes teams around metrics (CURR, DAUs) rather than features. Retention owns streaks because they drive CURR best, but other teams can work on streaks if it helps their metrics. This avoids territorial ownership while maintaining focus. Jackson notes this requires soft ownership, knowledge-sharing, and understanding competitive priorities across teams.",
"timestamp_start": "01:05:13",
"timestamp_end": "01:08:32",
"line_start": 484,
"line_end": 502
},
{
"id": "topic_19",
"title": "Process Rigor: Detailed Roadmaps and Dependency Mapping",
"summary": "Jackson's co-lead Antonia runs heavy Jira automation and detailed roadmaps linking experiments sequentially. The team plans months ahead, coordinating engineering, design, and product to avoid idle features. Dependency mapping across functions prevents lost cycles and ensures the next iteration is ready immediately after results land.",
"timestamp_start": "01:08:41",
"timestamp_end": "01:10:42",
"line_start": 511,
"line_end": 530
},
{
"id": "topic_20",
"title": "Shipping Simple V1s and Iterating",
"summary": "Duolingo resists big V1 features. The streak goal feature started as a single message, not a full goal-setting system. By shipping simple cores first, the team validates hypotheses, gets approvals faster, and iterates rapidly. This approach also prevents false wins—testing big features with many bells obscures which component actually drives results.",
"timestamp_start": "01:10:44",
"timestamp_end": "01:12:18",
"line_start": 535,
"line_end": 541
},
{
"id": "topic_21",
"title": "Deep Mining: 30% Optimization After Four Years",
"summary": "Jackson's predecessor said the team was only 30% optimized on streaks four years ago. After 600+ experiments, Jackson still believes they're far from saturation. This reflects the 'banana stand' mentality—identifying a high-impact lever and continuously testing variations without assuming diminishing returns.",
"timestamp_start": "01:13:29",
"timestamp_end": "01:14:45",
"line_start": 547,
"line_end": 552
},
{
"id": "topic_22",
"title": "Prerequisites for Streak Success and XP Display Experiment",
"summary": "Jackson warns that streaks are engagement hacks that only work if the core app is valuable. Adding XP tickers to lessons won by engagement metrics but distracted from the learning sanctuary. Luis rejected it because the roadmap was unclear—a lesson about testing high-impact screens carefully and having long-term feature strategy.",
"timestamp_start": "01:14:55",
"timestamp_end": "01:16:03",
"line_start": 556,
"line_end": 563
},
{
"id": "topic_23",
"title": "Visibility and Care: Why Users Care When Duolingo Does",
"summary": "Board member Bing Gordon noted that users care about streaks because Duolingo visually prioritizes them post-session with premium animations, notifications, and messaging. If Duolingo relegated streaks to a corner, users wouldn't care. Visibility and emphasis communicate importance and drive user attachment.",
"timestamp_start": "01:16:09",
"timestamp_end": "01:17:58",
"line_start": 565,
"line_end": 574
},
{
"id": "topic_24",
"title": "Testing Over Philosophy and Final Recommendations",
"summary": "Jackson's final advice: test ideas rather than philosophizing. Streaks involve human psychology—real-world validation beats conference room debates. He recommends starting with hypotheses but being willing to experiment broadly to understand user response.",
"timestamp_start": "01:18:57",
"timestamp_end": "01:20:29",
"line_start": 575,
"line_end": 589
},
{
"id": "topic_25",
"title": "Lightning Round: Books, Media, Products, and Team Culture",
"summary": "Jackson shares personal recommendations: 'A Guide to Midwest Conversation' (humor), 'Fate is the Hunter' (aviation memoir), Bluey and Emily in Paris (entertainment), innovative ladders (product), 'you miss 100% of shots you don't take' (philosophy), and the team's daily yee-haw standup tradition (culture).",
"timestamp_start": "01:21:05",
"timestamp_end": "01:26:17",
"line_start": 598,
"line_end": 665
}
],
"insights": [
{
"id": "I1",
"text": "Streaks work best when layered on top of an app that users genuinely want to use. Without a compelling core loop, optimization on streaks becomes distraction and waste.",
"context": "Jackson emphasizes that engagement mechanics like streaks are accelerants, not fundamentals. If users don't find value in the core product, no streak mechanic will drive lasting retention.",
"topic_id": "topic_22",
"line_start": 556,
"line_end": 563
},
{
"id": "I2",
"text": "Loss aversion—users not wanting to lose a streak—is a powerful universal human psychology that applies across most apps and use cases.",
"context": "Jackson describes loss aversion as an armchair psychology concept that works on humans, making it a reliable lever for engagement.",
"topic_id": "topic_22",
"line_start": 557,
"line_end": 560
},
{
"id": "I3",
"text": "Simplifying the unit of measure from XP goals to one lesson per day removed complexity while maintaining meaningfulness, because it aligned with the app's actual unit of use.",
"context": "The shift from XP-based to lesson-based streaks was massive because users think in terms of lessons, not points. Simplicity + meaningfulness = engagement.",
"topic_id": "topic_2",
"line_start": 88,
"line_end": 98
},
{
"id": "I4",
"text": "The biggest retention jumps happen in the first seven days of a streak; after day seven, loss aversion kicks in and retention plateaus. Focus disproportionately on the 0-7 day window.",
"context": "Data-driven insight from Duolingo's retention curves. Day 1→2 is huge, 2→3 is huge, up to day 7. After day 7, marginal returns diminish significantly.",
"topic_id": "topic_5",
"line_start": 151,
"line_end": 156
},
{
"id": "I5",
"text": "Revealed behavior (when users actually practice) beats stated preferences (when users say they'll practice). Notification timing of 23.5 hours after last practice outperforms user-customizable times.",
"context": "Users say they'll practice at 7 PM, but life changes. The algorithm that sends 23.5 hours after their actual last practice time wins every experiment testing more complex logic.",
"topic_id": "topic_15",
"line_start": 403,
"line_end": 405
},
{
"id": "I6",
"text": "A simple copy change from 'Continue' to 'Commit To My Goal' on a goal-setting screen was a massive DAU win. Cheap tests can yield outsized impact.",
"context": "One of Jackson's earliest wins. The new CTA aligns user action with desired outcome (commit, not churn). Shows the power of psychological framing in copy.",
"topic_id": "topic_7",
"line_start": 200,
"line_end": 203
},
{
"id": "I7",
"text": "Adding an opt-out button to a goal-setting flow—even though it doesn't affect downstream behavior—significantly increased engagement because it creates intentional commitment.",
"context": "Testing showed that users engage more when making active choices versus defaults, even if those choices don't matter downstream. Intentionality matters.",
"topic_id": "topic_6",
"line_start": 169,
"line_end": 171
},
{
"id": "I8",
"text": "Pre-selecting a harder goal over letting users choose reduced engagement, because the act of selecting the goal—not the goal difficulty—drives engagement.",
"context": "Counter-intuitive finding: letting users pick goals wins over optimizing for their picks. Agency matters more than optimization.",
"topic_id": "topic_6",
"line_start": 172,
"line_end": 174
},
{
"id": "I9",
"text": "Two streak freezes are optimal; three freezes don't improve retention long-term because they train users to take unnecessary days off, reducing return rates.",
"context": "Competing effects: more freezes help short-term returns after missed days, but over-condition users to longer absences, hurting overall CURR.",
"topic_id": "topic_11",
"line_start": 337,
"line_end": 342
},
{
"id": "I10",
"text": "New streaks need more flexibility (free freezes), but long streaks need less flexibility because long-streak users have intrinsic motivation and don't need permission to skip.",
"context": "Jackson differentiates user psychology by streak age. Early-stage habit formation requires safety nets; established habits require invitation to perfection.",
"topic_id": "topic_12",
"line_start": 342,
"line_end": 351
},
{
"id": "I11",
"text": "There's a one-way door in feature design: if you make streaks too easy or cheap, the 9 million long-streak users will stop caring, causing retention collapse.",
"context": "Jackson describes this as an extinction-level event. Strategic guards (like Antonia, the keeper of sanctity) prevent crossing this irreversible threshold.",
"topic_id": "topic_14",
"line_start": 372,
"line_end": 375
},
{
"id": "I12",
"text": "Users perceive notifications about streak features differently than generic notifications. A 10 PM 'streak saver' notification is seen as helpful, not spammy, because it aligns with user values.",
"context": "Notification effectiveness depends on attachment to the underlying feature. When users care about streaks, they appreciate streak reminders.",
"topic_id": "topic_15",
"line_start": 409,
"line_end": 414
},
{
"id": "I13",
"text": "Haptics and animations that cause users to pause and savor moments increase streak connection more than friction-reducing optimizations. Strategic friction at high-value screens works.",
"context": "Counter to the usual PM instinct to minimize friction everywhere. For signature moments, intentional friction (beautiful animations, haptics) increases emotional investment.",
"topic_id": "topic_17",
"line_start": 453,
"line_end": 456
},
{
"id": "I14",
"text": "Organizing teams around metrics (e.g., CURR) rather than features creates softer ownership and encourages cross-team collaboration while maintaining accountability.",
"context": "Jackson's team owns streaks because they drive CURR, but other teams can work on streaks if it helps their metrics. This requires clear communication and shared understanding.",
"topic_id": "topic_18",
"line_start": 490,
"line_end": 494
},
{
"id": "I15",
"text": "Shipping minimal V1 features validates hypotheses faster, prevents false wins from confounding variables, and allows iterative buildup based on learning.",
"context": "Streak goals started as a single message, not a full system. Testing simple cores first prevented over-engineering and kept learning velocity high.",
"topic_id": "topic_20",
"line_start": 535,
"line_end": 541
},
{
"id": "I16",
"text": "Neutrally-winning experiments should usually be killed unless they're platform features that enable future high-value experiments. Cognitive load from complexity matters.",
"context": "Jackson's policy: if a feature doesn't win and adds UI complexity, shut it down. Only ship neutral experiments if they're foundational for future roadmap.",
"topic_id": "topic_8",
"line_start": 146,
"line_end": 147
},
{
"id": "I17",
"text": "Clarity beats cleverness in feature design. Users don't understand streaks or freezes intuitively; simple explanatory UI and copy outperforms beautiful metaphors.",
"context": "The flame metaphor didn't resonate globally; shifting to prominent numbers and calendar UI won because it communicated mechanic clearly.",
"topic_id": "topic_10",
"line_start": 287,
"line_end": 291
},
{
"id": "I18",
"text": "Visual prominence and repeated messaging about a feature signal to users that it's important. Users care about streaks because Duolingo visually prioritizes them.",
"context": "Bing Gordon insight: post-lesson streak screens, animations, notifications, and messaging all communicate importance. Visibility drives user attachment.",
"topic_id": "topic_23",
"line_start": 566,
"line_end": 570
},
{
"id": "I19",
"text": "Detailed dependency mapping across product, design, and engineering roadmaps prevents idle features and ensures momentum between experiments.",
"context": "Jackson's team uses Jira automation and quarterly planning to coordinate so the next iteration is ready immediately when results land. Lost cycles are opportunity cost.",
"topic_id": "topic_19",
"line_start": 517,
"line_end": 519
},
{
"id": "I20",
"text": "Half of experiments lose, but all yield learning. The teaching is that you should test many things rather than debating internally.",
"context": "Duolingo runs ~600 experiments over 4 years on streaks. 50% win rate is high; losing experiments still provide insights about user psychology.",
"topic_id": "topic_4",
"line_start": 140,
"line_end": 141
},
{
"id": "I21",
"text": "Engagement at the cost of learning is self-defeating; streaks should strengthen the core learning experience, not compete with it.",
"context": "Jackson describes himself as a learning PM as much as an engagement PM. If users don't learn, they won't care about streaks long-term.",
"topic_id": "topic_22",
"line_start": 114,
"line_end": 120
},
{
"id": "I22",
"text": "Language learning is particularly well-suited to streaks because day-to-day progress is invisible; streaks provide tangible feedback. Match streak mechanics to your app's feedback timeline.",
"context": "Language learning takes years; daily streaks show progress where daily lessons don't. Companies should frame streaks around their own measurable outcomes.",
"topic_id": "topic_9",
"line_start": 221,
"line_end": 225
},
{
"id": "I23",
"text": "Simplifying from one exercise per lesson back to one full lesson per day preserved DAU gains because the unit of measure stayed meaningful.",
"context": "Testing one-exercise streaks captured only low-engagement users not worth retaining. The sweet spot is the smallest meaningful unit, not the simplest.",
"topic_id": "topic_3",
"line_start": 125,
"line_end": 129
},
{
"id": "I24",
"text": "Monetization and retention sometimes conflict. Demonetizing streak freezes by offering free 'Earn Back' was a retention win but a revenue hit.",
"context": "Jackson is actively experimenting with trading revenue for retention when retention wins are large enough, requiring decision-making about which metric to optimize.",
"topic_id": "topic_13",
"line_start": 361,
"line_end": 363
},
{
"id": "I25",
"text": "Users attach emotional value to features they care about, creating attachment even to 'imperfect' mechanics. Perfect Streak recognition taps into this by celebrating non-flexibility.",
"context": "Offering flexibility and celebrating perfection aren't contradictory; users can value both streaks and streak freezes simultaneously.",
"topic_id": "topic_16",
"line_start": 425,
"line_end": 429
}
],
"examples": [
{
"id": "EX1",
"explicit_text": "Duolingo is a $14 billion company, it's hitting all-time highs, and doubled in value in the past six months",
"inferred_identity": "Duolingo Inc.",
"confidence": "100",
"tags": [
"Duolingo",
"EdTech",
"Mobile App",
"Language Learning",
"Market Cap",
"Stock Performance",
"Growth",
"Public Company"
],
"lesson": "Demonstrates how a single feature (streaks) can drive billions of dollars in market value for a consumer app business",
"topic_id": "topic_1",
"line_start": 1,
"line_end": 2
},
{
"id": "EX2",
"explicit_text": "We have over 9 million users with a year plus streak",
"inferred_identity": "Duolingo",
"confidence": "100",
"tags": [
"Duolingo",
"Streaks",
"User Retention",
"Engagement Metric",
"Language Learning",
"Daily Active Users"
],
"lesson": "Illustrates the scale of impact: 9 million users represents a massive city of highly engaged, retained users relying on the streak mechanic",
"topic_id": "topic_1",
"line_start": 65,
"line_end": 66
},
{
"id": "EX3",
"explicit_text": "When we launched Duolingo, we launched with a streak feature...it was an experience point based goal...based on what your language learning goal was, maybe you have a 10 experience point goal versus a 50 experience point goal",
"inferred_identity": "Duolingo (original 2011 launch)",
"confidence": "95",
"tags": [
"Duolingo",
"Streaks",
"Original Feature",
"XP System",
"Product Evolution",
"Language Learning",
"Launch Strategy"
],
"lesson": "Shows that streaks were core from product launch, not a later addition, and demonstrates the initial XP-based design that later proved inferior to simpler mechanics",
"topic_id": "topic_2",
"line_start": 88,
"line_end": 90
},
{
"id": "EX4",
"explicit_text": "We have a feature that we have, it is the simplest thing in the world, it's called Perfect Streak. And it's just, if you don't use the streak freeze for a few days, we make your streak look gold",
"inferred_identity": "Duolingo",
"confidence": "100",
"tags": [
"Duolingo",
"Streaks",
"Perfect Streak",
"Visual Reward",
"Gamification",
"Retention Feature",
"Simple Design"
],
"lesson": "Demonstrates that low-complexity features with clear visual rewards can drive engagement by celebrating desired behavior (no freezes) without mechanical rewards",
"topic_id": "topic_16",
"line_start": 425,
"line_end": 426
},
{
"id": "EX5",
"explicit_text": "We had an employee who lost her, I think a four-month perfect streak...it was a big deal for her because she did her lesson...there was a bunch of stuff going on",
"inferred_identity": "Duolingo (employee story)",
"confidence": "95",
"tags": [
"Duolingo",
"Perfect Streak",
"User Attachment",
"Bug Impact",
"Customer Support",
"Streak Care"
],
"lesson": "Shows that users develop emotional attachment to perfect streaks status, and even small bugs matter to highly engaged users, justifying investment in infrastructure",
"topic_id": "topic_16",
"line_start": 427,
"line_end": 429
},
{
"id": "EX6",
"explicit_text": "We did some UXR in India many years ago, and this was something that just did not resonate at all there...the idea of keeping a flame lit to show your commitment to something makes less sense",
"inferred_identity": "Duolingo (India market research)",
"confidence": "95",
"tags": [
"Duolingo",
"Streaks",
"Flame Metaphor",
"India",
"Global Product",
"UXR",
"Localization",
"Cultural Design"
],
"lesson": "Demonstrates the importance of global UXR; metaphors that work in one culture (flame) may not resonate in others, requiring localized design approaches",
"topic_id": "topic_10",
"line_start": 287,
"line_end": 288
},
{
"id": "EX7",
"explicit_text": "Peloton has weekly streaks because the idea of doing a Peloton workout every single day was hard for this user during COVID. It was just like every now and then you get on the Peloton, that was great, but the idea of a weekly streak was something that I could keep up",
"inferred_identity": "Peloton Inc.",
"confidence": "95",
"tags": [
"Peloton",
"Streaks",
"Weekly Cadence",
"Fitness",
"Hardware",
"Subscription",
"Usage Pattern",
"Habit Formation"
],
"lesson": "Shows that streaks can be adapted to different cadences (weekly vs. daily) based on realistic user behavior and app type, broadening streak applicability",
"topic_id": "topic_9",
"line_start": 587,
"line_end": 588
},
{
"id": "EX8",
"explicit_text": "Our thinking was, cool, you're going to say 7:00 PM, that's when I really want to extend my streak each day, and then you know what? I say this to somebody with two kids, life gets in the way, life always gets in the way, and when you think you're going to practice will change",
"inferred_identity": "Duolingo (user research on notification timing)",
"confidence": "95",
"tags": [
"Duolingo",
"Notifications",
"User Preferences",
"Behavior vs. Intent",
"Retention",
"Scheduling",
"Real Life"
],
"lesson": "Illustrates the gap between stated preferences and revealed behavior; life circumstances change preferred practice times, making historical behavior better predictors",
"topic_id": "topic_15",
"line_start": 403,
"line_end": 405
},
{
"id": "EX9",
"explicit_text": "We ran so many tests on our Duolingo streak...I do remember trying to hire for a while a haptics contractor, like haptics design, and it was the saddest hiring I've ever done, because it was just, I don't know, it was such a specific...I just went through a lot of people",
"inferred_identity": "Duolingo (hiring for niche role)",
"confidence": "95",
"tags": [
"Duolingo",
"Haptics",
"Design",
"Hiring",
"Specialized Skills",
"Product Design",
"Niche Expertise"
],
"lesson": "Demonstrates that deep product optimization requires niche skills (haptic design) that are hard to hire for, eventually leading them to hire a specialized studio (Hobbs)",
"topic_id": "topic_17",
"line_start": 461,
"line_end": 467
},
{
"id": "EX10",
"explicit_text": "We actually just required an animation studio, Hobbs in Detroit, and now they are the sort of keepers of, they do a lot of motion design work, haptics very close to that",
"inferred_identity": "Hobbs (animation studio in Detroit)",
"confidence": "85",
"tags": [
"Hobbs",
"Animation Studio",
"Detroit",
"Motion Design",
"Haptics",
"Contractor",
"Duolingo"
],
"lesson": "Shows how companies solve hiring challenges for niche expertise by partnering with specialized agencies rather than hiring full-time",
"topic_id": "topic_17",
"line_start": 461,
"line_end": 461
},
{
"id": "EX11",
"explicit_text": "Luis launched it with a TEDTalk, we probably had a more tech-forward user base initially, and so this whole idea of an experience points based streak system made sense",
"inferred_identity": "Luis von Ahn (Duolingo founder)",
"confidence": "95",
"tags": [
"Luis von Ahn",
"Duolingo",
"Founder",
"TEDTalk",
"Launch Strategy",
"Early Users",
"EdTech"
],
"lesson": "Demonstrates how founder communication (TEDTalk) shapes initial user base, which in turn influences early product design decisions",
"topic_id": "topic_2",
"line_start": 91,
"line_end": 93
},
{
"id": "EX12",
"explicit_text": "Jorge, our former head of product wrote...a newsletter that was still the single most popular newsletter post of all time...across 300 plus posts",
"inferred_identity": "Jorge (Duolingo former head of product)",
"confidence": "85",
"tags": [
"Jorge",
"Duolingo",
"Head of Product",
"CURR Metric",
"Newsletter",
"Retention",
"Thought Leadership"
],
"lesson": "Illustrates how high-quality product thinking (specifically about CURR) can be communicated publicly and establish industry influence",
"topic_id": "topic_5",
"line_start": 251,
"line_end": 257
},
{
"id": "EX13",
"explicit_text": "We used to say continue, our standard CTA is continue, and we changed that to commit to my goal, and it was a massive win",
"inferred_identity": "Duolingo (streak goal CTA)",
"confidence": "100",
"tags": [
"Duolingo",
"Streaks",
"Copy Testing",
"CTA",
"Conversion",
"Psychological Framing",
"Button Text"
],
"lesson": "Demonstrates the power of psychological language in CTAs; 'Commit' invokes commitment psychology while 'Continue' is neutral, driving retention",
"topic_id": "topic_7",
"line_start": 200,
"line_end": 201
},
{
"id": "EX14",
"explicit_text": "We had this idea of like, oh, let's just tell you how much more likely you are to finish the course if you get a 30-day streak...it was like you're seven times more likely to finish the course if you have a 30-day streak",
"inferred_identity": "Duolingo (streak goal messaging)",
"confidence": "95",
"tags": [
"Duolingo",
"Streaks",
"Goal Setting",
"Copy",
"Outcome Messaging",
"Psychological Leverage",
"User Motivation"
],
"lesson": "Shows how borrowing copy from monetization teams (similar to subscription messaging) can be adapted to drive engagement goals",
"topic_id": "topic_6",
"line_start": 157,
"line_end": 161
},
{
"id": "EX15",
"explicit_text": "One of the strings that they had, the pieces of copy that they had, worked really, really well was, I think it was your 5.6 x more likely to finish the course if you subscribe to Plus",
"inferred_identity": "Duolingo (monetization team copy)",
"confidence": "95",
"tags": [
"Duolingo",
"Super Subscription",
"Monetization",
"Copy Testing",
"Plus",
"Subscription",
"Cross-Team Learning"
],
"lesson": "Demonstrates how retention and monetization teams share learnings across the company, with successful monetization copy frameworks applied to engagement features",
"topic_id": "topic_6",
"line_start": 158,
"line_end": 159
},
{
"id": "EX16",
"explicit_text": "I remember saying, Dude, the streak, it just counts up, you guys have been testing on it for years, how much more work can we do on the streak? And he was like, Jackson, you child...we're not even 30% of the way optimized",
"inferred_identity": "Anton (Duolingo, previous retention PM lead)",
"confidence": "85",
"tags": [
"Anton",
"Duolingo",
"Retention PM",
"Streaks",
"Optimization",
"Product Coaching",
"Mentorship"
],
"lesson": "Shows that even features that seem 'done' after years of work are far from optimization, and that knowledge transfer from predecessors is critical",
"topic_id": "topic_21",
"line_start": 548,
"line_end": 549
},
{
"id": "EX17",
"explicit_text": "Antonia, who made that awesome cross-stitch for me...is the keeper for us of the sanctity of the streak",
"inferred_identity": "Antonia (Duolingo, Jackson's co-lead)",
"confidence": "90",
"tags": [
"Antonia",
"Duolingo",
"Product Manager",
"Retention Team",
"Streak Sanctity",
"Product Governance",
"Teamwork"
],
"lesson": "Demonstrates the importance of having a designated person protect feature integrity and prevent over-optimization that undermines core value",
"topic_id": "topic_14",
"line_start": 371,
"line_end": 375
},
{
"id": "EX18",
"explicit_text": "Our product review structure where we've got our head of product design, one of the lead, the product management leaders, and then Luis, NPR. And because they see everything, and they have a really high product bar",
"inferred_identity": "Duolingo (product review board with Luis, head of design, PM leaders)",
"confidence": "95",
"tags": [
"Duolingo",
"Product Review",
"Luis",
"Governance",
"Feature Approval",
"Design",
"Quality Gate"
],
"lesson": "Shows how high-level review by founders and leaders prevents feature bloat and maintains product coherence despite high experiment volume",
"topic_id": "topic_8",
"line_start": 208,
"line_end": 210
},
{
"id": "EX19",
"explicit_text": "I'm a former management consultant, I flew every week for almost six years, and I never once had to worry about, am I going to make it to the other end of this flight alive?",
"inferred_identity": "Jackson Shuttleworth (background)",
"confidence": "100",
"tags": [
"Jackson Shuttleworth",
"Management Consulting",
"Travel",
"Career Background",
"Product Management"
],
"lesson": "Personal background detail that shows consulting experience may inform Jackson's process-oriented approach to product management",
"topic_id": "topic_25",
"line_start": 620,
"line_end": 621
},
{
"id": "EX20",
"explicit_text": "Board member Bing Gordon...had this comment where he was just like, The reason why users care about your streak so much is because you care about your streaks much",
"inferred_identity": "Bing Gordon (Duolingo board member)",
"confidence": "95",
"tags": [
"Bing Gordon",
"Board Member",
"Duolingo",
"Product Strategy",
"Feature Visibility",
"User Psychology",
"Venture Capital"
],
"lesson": "External leader observation that product team emphasis and visual prominence signal importance to users, driving engagement and attachment",
"topic_id": "topic_23",
"line_start": 566,
"line_end": 567
},
{
"id": "EX21",
"explicit_text": "I'm based in Kansas City, I'm a proud Midwesterner, and us Midwesterners talk in a certain way...My wife is German, and I gave it to her so she could better understand",
"inferred_identity": "Jackson Shuttleworth (personal background)",
"confidence": "100",
"tags": [
"Jackson Shuttleworth",
"Kansas City",
"Midwest",
"Culture",
"Marriage",
"Communication",
"Personal"
],
"lesson": "Background detail showing Jackson's awareness of communication differences, which likely influences his attention to copy testing and user understanding",
"topic_id": "topic_25",
"line_start": 605,
"line_end": 612
},
{
"id": "EX22",
"explicit_text": "I've got a 400-day streak...Note that that is a lot less time than I've been at Duolingo, I have lost and restarted streaks a lot of times at my time at Duolingo",
"inferred_identity": "Jackson Shuttleworth (personal use)",
"confidence": "100",
"tags": [
"Jackson Shuttleworth",
"Duolingo User",
"Streak User",
"Personal Experience",
"Product Manager Usage",
"Retention"
],
"lesson": "Shows that even the PM leading the feature struggles with long-term perfect streaks, validating the design choice to offer flexibility",
"topic_id": "topic_12",
"line_start": 347,
"line_end": 348
},
{
"id": "EX23",
"explicit_text": "I'm learning French on Duolingo, slight plug for the app, I can understand a lot of the French that is being spoken...there is no better joy than having invested as much time as I have in French",
"inferred_identity": "Jackson Shuttleworth (Duolingo user learning French)",
"confidence": "100",
"tags": [
"Jackson Shuttleworth",
"Duolingo",
"French Learning",
"User Experience",
"Product Manager Usage",
"Engagement"
],
"lesson": "Personal validation that the product delivers on its core promise (language learning), reinforcing why streaks layer successfully on top of core value",
"topic_id": "topic_25",
"line_start": 629,
"line_end": 630
},
{
"id": "EX24",
"explicit_text": "Last week I went to Home Depot, and I bought a new ladder, and ladder innovations, you don't think of often, but you can make one of the legs go a little bit further than the other leg...I cleaned my gutters twice last week just because of how awesome this ladder has...changed my life",
"inferred_identity": "Jackson Shuttleworth (hardware product discovery)",
"confidence": "100",
"tags": [
"Jackson Shuttleworth",
"Home Depot",
"Ladder",
"Product Innovation",
"Hardware",
"Delight",
"Personal Interest"
],
"lesson": "Shows how small product innovations (leg-length adjustment) solve real problems and drive delight, analogous to micro-optimizations in software",
"topic_id": "topic_25",
"line_start": 641,
"line_end": 642
},
{
"id": "EX25",
"explicit_text": "We have way too many traditions to count. I will share the weird tradition that we do at every retention standup...whoever's the last person to go would count down 3, 2, 1, and then we'd all try to clap at the same time...and four years later we're still doing it...we all say yee-haw in unison afterwards",
"inferred_identity": "Duolingo Retention Team (team culture)",
"confidence": "95",
"tags": [
"Duolingo",
"Retention Team",
"Team Culture",
"Standup Traditions",
"Yee-Haw",
"Remote Work",
"Team Bonding"
],
"lesson": "Shows how small, recurring rituals (synchronized claps, yee-haw) build team cohesion and fun, essential for teams running 600+ experiments",
"topic_id": "topic_25",
"line_start": 652,
"line_end": 660
}
]
}